// pages/search/search.js
Page({
  data: {
    searchText: '',
    searchResults: [],
    timer: null
  },

  // 输入处理
  handleSearchInput(e) {
    const keyword = e.detail.value.trim()
    this.setData({ searchText: keyword })

    // 清除之前的定时器
    if (this.data.timer) clearTimeout(this.data.timer)
    
    // 设置新的定时器（300ms防抖）
    this.data.timer = setTimeout(() => {
      if (keyword) {
        this.searchNotes(keyword)
      } else {
        this.setData({ searchResults: [] })
      }
    }, 300)
  },

  // 调用搜索接口
  searchNotes(keyword) {
    const token = wx.getStorageSync('token') // 从缓存获取token
    console.log('获取的 Token:', wx.getStorageSync('token'));
    
    wx.request({
      url: 'http://localhost:8848/Note/search',
      method: 'GET',
      header: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer ' + wx.getStorageSync('token')
      },
      data: {
        tag: keyword,
        title: keyword
      },
      
      success: (res) => {
        console.log('当前 Token:', wx.getStorageSync('token'));
        console.log('[接口响应]', res.data); // 打印完整响应数据
        console.log('res.data 的内容:', res.data);
        console.log('res.data 的类型:', typeof res.data);
        console.log('res.data 是否为数组:', Array.isArray(res.data));
        if (res.statusCode === 200) {
          const userId = res.data.userId; 
        };
        if (Array.isArray(res.data)) {
            this.setData({
                searchResults: res.data.map(item => ({
                    ...item,
                    notetime: this.formatTime(item.notetime)
                }))
            });
        } else {
            console.error('res.data 不是数组，无法使用 map 方法');
        }
      },
      fail: (err) => {
        wx.showToast({
          title: '搜索失败',
          icon: 'none'
        })
      }
    })
  },

  // 时间格式化方法
  formatTime(timeStr) {
    const date = new Date(timeStr)
    return `${date.getFullYear()}-${date.getMonth()+1}-${date.getDate()} ${date.getHours()}:${date.getMinutes()}`
  },

  handleNote: function(e) {
    let notenum = e.currentTarget.dataset.notenum;
    wx.navigateTo({
      url: `/pages/note/note?notenum=${notenum}`,
    })
  }
})